Convertir formato fecha yyyy-mm-dd a dd-mm-yyyy
Convertir formato fecha yyyy-mm-dd a dd-mm-yyyy. En este artículo tratare el tema de formatear una fecha con PHP, ya sea para mostrar resultados de fechas de una base de datos o la inserción de fechas a la base de datos .Convertir una fecha de yyyy-mm-dd => dd-mm-yyyy (pero no en MYSQL); sino directamente desde el script PHP.
¿Es posible esto?
En realidad si y aquí tocaremos distintas formas de hacerlos, veamos ejemplos sencillo para tal inconveniente. En ocasiones para visualizar fechas es recomendable este formato (18-11-2016), pero a la hora de guardar una fecha en la base de datos es recomendable este formato (2016-11-18). Veamos las conversiones.
A) Primera forma:
Utilizando esta función en PHP de yyyy-mm-dd => dd-mm-yyyy
function verfecha($vfecha)
{
$fch=explode("-",$vfecha);
$tfecha=$fch[2]."-".$fch[1]."-".$fch[0];
return $tfecha;
}
$mifecha ="2016-11-18";
echo verfecha($mifecha); // Imprimira 18-11-2016
Conversión de fecha dd-mm-yyyy => yyyy-mm-dd
function savefecha($vfecha)
{
$fch=explode("-",$vfecha);$tfecha=$fch[2]."-".$fch[1]."-".$fch[0];
return $tfecha;
}
$mifecha ="18-11-2016";
echo savefecha($mifecha); // Imprimira 2016-11-18Convertir formato fecha yyyy-mm-dd => dd-mm-yyyy
B) Segunda Forma
Uso de strtotime() y date():
$originalDate = "2016-11-18";
$newDate = date("d-m-Y", strtotime($originalDate));Si desea evitar la conversión de strtotime (por ejemplo strtotime no es capaz de analizar su entrada) puede utilizar la siguiente:
$myDateTime = DateTime::createFromFormat('Y-m-d', $dateString);
$newDateString = $myDateTime->format('d-m-Y');o sino el equivalente:
$newDateString = date_format(date_create_from_format('Y-m-d', $dateString), 'd-m-Y');Ejemplo:
<?php
$mifecha= '2016-11-18';
$date = new DateTime($mifecha);
echo $date->format('d.m.Y'); // 18.11.2016
echo $date->format('d-m-Y'); // 18-11-2016
?>
Referencia:
Formato de fechas